home *** CD-ROM | disk | FTP | other *** search
/ Gekkan Dennou Club 147 / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan).7z / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan) (Track 1).bin / tools / rb / jlcd100.lzh / TNB_FSW / RSMS070.Lzh / RSMOUSE.s < prev    next >
Text File  |  1995-04-25  |  11KB  |  664 lines

  1.     *.include    tnb.mac
  2. DI        macro
  3.         ori.w        #$0700,sr
  4.         .endm
  5. EI        macro
  6.         andi.w        #$F8FF,sr
  7.         .endm
  8. SUPER        macro
  9.         moveq        #$81,d0
  10.         trap        #15
  11.         .endm
  12. USER        macro
  13.         moveq        #$81,d0
  14.         trap        #15
  15.         .endm
  16. TimerLed    .macro
  17.         *bset    #0,$00e8a01b
  18.         *eori.b    #%0000_0111,$00e8a001
  19.         .endm
  20.  
  21.     .include    iocscall.mac
  22.     .include    doscall.mac
  23.  
  24. StartStatio:*******************常駐部
  25. SS:
  26.     jmp    init-SS(a4)
  27. head:
  28. HEAD1 = 'RSMO'
  29. HEAD2 = 'S070'
  30.     .dc.l    HEAD1
  31.     .dc.l    HEAD2
  32.     .even
  33. st:
  34. MSD:    *---------------------------
  35.     *    ($24D)[$0934]    マウスエミュ
  36.     *    マウスデータ変更
  37.     *        a1にワークのアドレスがはいる
  38.  
  39. MSD_    = $0934.w
  40.     tst.w    DrvDrv
  41.     beq    MSD_JMP
  42.  
  43.     movem.l    d0-d5/a0,-(sp)
  44.  
  45.     bsr    RS_LOF232C
  46.     move.w    d0,d5
  47.     beq    MSD_EE    *ないなら終わり
  48.  
  49.     move.w    MSD_GF(pc),d0        *現在の読み込み待ち位置 0:ボタン 1:X 2:Y
  50.     beq    @f
  51.     subq.w    #1,d0
  52.     beq    MSD_NX
  53.     bra    MSD_NY
  54. @@:
  55.     bsr    RS_ISNS232C
  56.     andi.w    #$FF,d0
  57.     move.w    d0,MSD_B
  58.     andi.b    #$C0,d0
  59.  
  60.         TimerLed
  61.  
  62.     cmpi.b    #$40,d0
  63.     beq    @f
  64.         *MSとちがうようだ・・
  65. MSD_NoTP:
  66.  
  67.         TimerLed
  68.  
  69.     bsr    RS_INP232C    *バッファーから消す(これがなければ多少RSの共用が出来るが・・)
  70.     clr.w    MSD_GF
  71.     clr.b    MS_Bot    *0:L Bot 1:R Bot    設定用
  72.     bra    MSD_EE
  73.  
  74. @@:
  75.     bsr    RS_INP232C    *バッファーから消す
  76.     subq.w    #1,d5
  77.     bne    MSD_NX    *データあり
  78.     move.w    #1,MSD_GF
  79.     bra    MSD_EE
  80.  
  81. MSD_NX:    
  82.     bsr    RS_ISNS232C
  83.     andi.w    #$FF,d0
  84.     move.w    d0,MSD_X
  85.     andi.w    #$C0,d0
  86.     bne    MSD_NoTP
  87.     bsr    RS_INP232C    *バッファーから消す
  88.     subq.w    #1,d5
  89.     bne    MSD_NY    *データあり
  90.     move.w    #2,MSD_GF
  91.     bra    MSD_EE
  92.  
  93. MSD_NY:    bsr    RS_ISNS232C
  94.     andi.w    #$FF,d0
  95.     move.w    d0,MSD_Y
  96.     andi.w    #$C0,d0
  97.     bne    MSD_NoTP
  98.     bsr    RS_INP232C    *バッファーから消す
  99.  
  100.         TimerLed
  101.  
  102.         *やっとマウス情報が揃った。
  103.         *ボタンチェック
  104.     move.w    MSD_B(pc),d0
  105.     lsr.w    #4,d0
  106.     andi.w    #3,d0
  107.     tst.w    BotMod            *ボタンモード
  108.     bne    @f
  109.     lea    MB_TRN(pc),a0
  110.     move.b    0(a0,d0.w),d0
  111. @@:    move.b    d0,MS_Bot    *0:L Bot 1:R Bot    設定用
  112.         *X
  113.     move.w    MSD_B(pc),d0
  114.     move.w    d0,d1
  115.     lsl.w    #6,d0
  116.     andi.w    #$C0,d0
  117.     or.w    MSD_X(pc),d0
  118.     add.b    d0,1(a1)
  119.         *Y
  120.     lsl.w    #4,d1
  121.     andi.w    #$C0,d1
  122.     or.w    MSD_Y(pc),d1
  123.     add.b    d1,2(a1)
  124.     clr.w    MSD_GF
  125.  
  126.     move.b    MS_Bot(pc),d2
  127.     or.b    d2,(a1)
  128.  
  129.         ****** TEMCALLワーク書き込み
  130.     lea    Data4(pc),a0
  131.     tst.b    3(a0)
  132.     beq    @f
  133.     clr.l    (a0)
  134. @@:    or.b    d2,(a0)
  135.     add.b    d0,1(a0)
  136.     add.b    d1,2(a0)
  137.     bra    MSD_EEL
  138.  
  139. MSD_EE:
  140.     move.b    MS_Bot(pc),d2
  141.     or.b    d2,(a1)
  142.         ****** TEMCALLワーク書き込み
  143.     lea    Data4(pc),a0
  144.     tst.b    3(a0)
  145.     beq    @f
  146.     clr.l    (a0)
  147. @@:    or.b    d2,(a0)
  148.  
  149. MSD_EEL:
  150.     movem.l    (sp)+,d0-d5/a0
  151. MSD_JMP:
  152.     jmp    $00000000.l
  153.  
  154. MS_INIT:*---------------------------
  155.     *    ($170)[$05C0]
  156.     *    IOCS $70 MS_INIT
  157.  
  158. MS_INIT_ = $05C0.w
  159.  
  160.     tst.w    DrvDrv
  161.     beq    MS_INIT_JMP
  162.  
  163.     movem.l    d0-d1,-(sp)
  164.     bsr    RSINIT
  165.     movem.l    (sp)+,d0-d1
  166. MS_INIT_JMP:
  167.     jmp    $00000000.l
  168.  
  169. MS_SEL:    *-----------------------------
  170.     *    ($17B)[$05EC]
  171.     *    IOCS $7B MS_SEL
  172.     *
  173.  
  174. MS_SEL_ = $05EC.w
  175.  
  176.     tst.w    DrvDrv
  177.     beq    MS_SEL_JMP
  178.  
  179.     cmpi.w    #$104,d1        *RS MOUSE?
  180.     beq    @f
  181. MS_SEL_JMP:
  182.     jmp    0.l
  183.  
  184. @@:    move.l    #'TEMC',d0
  185.     rts
  186.  
  187. MS_LIMIT:*-----------------------------
  188.     *    ($177)[$05DC]
  189.     *    IOCS $77 MS_LIMIT
  190.     *
  191.  
  192. MS_LIMIT_ = $05DC.w
  193.  
  194.     tst.w    DrvDrv
  195.     beq    MS_LIMIT_JMP
  196.  
  197.     cmpi.l    #'TEMC',d1
  198.     beq    @f
  199. MS_LIMIT_JMP:
  200.     jmp    0.l
  201. @@:
  202.     move.l    #$2,d3
  203.     cmpi.w    #4,d2        *JOYPORT?
  204.     beq    @f
  205.     bra    MS_LIMIT_JMP
  206. @@:
  207.     movem.l    d1/a0,-(sp)
  208.     lea    Data4(pc),a0
  209. @@:    moveq    #0,d0
  210.     btst    #0,(a0)
  211.     beq    @f
  212.     ori.l    #$FF000000,d0
  213. @@:    btst    #1,(a0)
  214.     beq    @f
  215.     ori.l    #$00FF0000,d0
  216. @@:    moveq    #0,d1
  217.     move.b    1(a0),d1
  218.     lsl.l    #8,d1
  219.     or.w    d1,d0
  220.     move.b    2(a0),d0
  221.     move.b    #-1,3(a0)
  222.     clr.b    1(a0)    *移動量はクリア
  223.     clr.b    2(a0)
  224.     *clr.l    (a0)
  225.     movem.l    (sp)+,d1/a0
  226.     rts
  227.  
  228. Data4:    .dc.l    0        *MS_LIMIT戻り値用
  229.             *読んだら +3.bを-1に!
  230.  
  231. RSINIT:    *******************************
  232.     * RS-232Cの尻有鼠用に初期化
  233.     *******************************
  234.         * FE DC BA 9 876543 210
  235.     move.w    #%01_00_10_0_000000_100,d1
  236.     *bra    RS_SET232C
  237.  
  238. RS_SET232C:
  239.     move.l    RS_AUXE(pc),d2
  240.     bne    @f
  241.     IOCS    _SET232C
  242.     rts
  243. @@:    move.b    #E_SET232C,d2
  244.     IOCS    _RSDRV
  245.     rts
  246.  
  247. RS_LOF232C:
  248.     move.l    RS_AUXE(pc),d2
  249.     bne    @f
  250.     IOCS    _LOF232C
  251.     rts
  252. @@:    move.b    #E_LOF232C,d2
  253.     IOCS    _RSDRV
  254.     rts
  255. RS_ISNS232C:
  256.     move.l    RS_AUXE(pc),d2
  257.     bne    @f
  258.     IOCS    _ISNS232C
  259.     rts
  260. @@:    move.b    #E_ISNS232C,d2
  261.     IOCS    _RSDRV
  262.     rts
  263. RS_INP232C:
  264.     move.l    RS_AUXE(pc),d2
  265.     bne    @f
  266.     IOCS    _INP232C    *バッファーから消す
  267.     rts
  268. @@:    move.b    #E_INP232C,d2
  269.     IOCS    _RSDRV
  270.     rts
  271.  
  272. RS_AUXE:
  273.     .dc.l    0        * (AUN NO)×0x100の値 0 なら [AUX]
  274.  
  275. MSD_GF:    .dc.w    0    *現在の読み込み待ち位置 0:ボタン 1:X 2:Y
  276. MSD_B:    .dc.w    0    *受信データ1
  277. MSD_X:    .dc.w    0    *受信データ2
  278. MSD_Y:    .dc.w    0    *受信データ3
  279.  
  280. MS_Bot:    .dc.b    0    *0:L Bot 1:R Bot    設定用
  281.     .even
  282.  
  283.     *    0,1,2,3
  284. MB_TRN:    .dc.b    0,2,1,3
  285.  
  286. BotMod:    .dc.w    0        *0:正常 1:反転 
  287.  
  288. RSMOD:    .dc.l    0        *常駐前の RS状態
  289.  
  290. DrvDrv:    .dc.w    1        *1:機能する 0:しない
  291.  
  292.  
  293. EndStatio:*******************常駐部
  294.  
  295.  
  296. MarkerChk:*----------------------------------------
  297.     *    a0 アドレス
  298.     *
  299.     *[戻り値] bne ちがう
  300.     *      beq あっている
  301.     cmpa.l    #$00F00000,a0
  302.     bcc    @f
  303.     cmp.l    #HEAD1,(a0)
  304.     bne    @f
  305.     cmp.l    #HEAD2,4(a0)
  306.     bne    @f
  307.     cmpa.l    a0,a0        *z=1
  308. @@:
  309.     rts
  310.  
  311.  
  312. InvChk:*----------------------------------------
  313.     *    a0.l==なら非常駐
  314.     *    a0.l!=なら常駐
  315.     movea.l    (a0),a0            *一つ前のポインタ
  316.     cmpa.l    #$00F00000,a0
  317.     bcc    IC1
  318.     cmp.l    #HEAD1,$0104(a0)
  319.     bne    @f
  320.     cmp.l    #HEAD2,$0108(a0)
  321.     bne    @f
  322.     adda.w    #$100,a0    **[SS]のポインタ
  323.     rts
  324. @@:                    **違う
  325.     tst.l    (a0)            *一つ前のポインタ
  326.     bne    InvChk            *0でない(上へ)
  327. IC1:    sub.l    a0,a0    *非常駐
  328.     rts
  329.  
  330.  
  331. AtoI:*----------------------------------------
  332.     *    a2 アドレス
  333.     *[戻り値] d0.l 数字
  334.     moveq    #0,d0
  335. @@:    move.b    (a2)+,d2
  336.     subi.b    #'0',d2
  337.     bcs    AIr
  338.     cmpi.b    #9,d2
  339.     bhi    AIr
  340.     andi.l    #$0000FF,d2
  341.     mulu    #10,d0
  342.     add.l    d2,d0
  343.     bra    @b
  344. AIr:    subq    #1,a2
  345.     rts
  346.  
  347.  
  348. init:*------------------------------------------------------------------
  349.     lea    usrsp,sp
  350.     pea    LR1(pc)
  351.     DOS    _PRINT
  352.     addq.w    #4,sp
  353.     ** 常駐チェック **
  354.     suba.l    a1,a1
  355.     SUPER
  356.     movea.l    d0,a1
  357.     moveq    #0,d1
  358.     bsr    InvChk
  359.     movea.l    a0,a3        *常駐先頭アドレス
  360.  
  361.     movea.l    MSD_,a0
  362.     suba    #MSD-head,a0
  363.     bsr    MarkerChk
  364.     bne    @f
  365.     bset    #0,d1
  366. @@:
  367.     movea.l    MS_INIT_,a0
  368.     suba    #MS_INIT-head,a0
  369.     bsr    MarkerChk
  370.     bne    @f
  371.     bset    #1,d1
  372. @@:
  373.     movea.l    MS_SEL_,a0
  374.     suba    #MS_SEL-head,a0
  375.     bsr    MarkerChk
  376.     bne    @f
  377.     bset    #2,d1
  378. @@:
  379.     movea.l    MS_LIMIT_,a0
  380.     suba    #MS_LIMIT-head,a0
  381.     bsr    MarkerChk
  382.     bne    @f
  383.     bset    #3,d1
  384. @@:
  385.                 *d1に常駐状態
  386.     USER
  387.  
  388.     ** 常駐していたらそのデータを引用 **
  389.     move.l    a3,d0
  390.     beq    conl
  391.     move.l    RS_AUXE-SS(a3),RS_AUXE
  392.     move.w    BotMod-SS(a3),BotMod
  393.     move.w    DrvDrv-SS(a3),DrvDrv
  394.  
  395. conl:    ** コマンドラインチェック **
  396.     tst.b    (a2)+        *スキップ
  397. sw:    move.b    (a2)+,d0
  398.     beq    keep
  399.     cmpi.b    #' ',d0
  400.     beq    sw
  401.     cmpi.b    #$09,d0        *tab
  402.     beq    sw
  403.     cmpi.b    #'-',d0
  404.     beq    swc
  405.     cmpi.b    #'/',d0
  406.     beq    swc
  407. swe:    pea    LR6(pc)
  408.     bra    PE    *end
  409. swc:    **スイッチ判断
  410.     move.b    (a2)+,d0
  411.     beq    swe
  412.     cmpi.b    #'?',d0
  413.     beq    help
  414.     ori.b    #$20,d0    *小文字化!
  415.     cmpi.b    #'r',d0
  416.     beq    free
  417.     cmpi.b    #'b',d0
  418.     beq    bswc
  419.     cmpi.b    #'i',d0
  420.     beq    iswc
  421.     cmpi.b    #'a',d0
  422.     beq    aswc
  423.     cmpi.b    #'o',d0
  424.     beq    oswc
  425.     cmpi.b    #'h',d0
  426.     beq    help
  427. swcerr:    pea    LR7(pc)
  428.     bra    PE    *end
  429.  
  430. aswc:******************
  431.     move.l    a3,d0
  432.     beq    @f
  433.     tst.w    I_SWC
  434.     bne    @f
  435.     pea    LR5_(pc)
  436.     bra    PE    *end
  437.  
  438. @@:    bsr    AtoI
  439.     cmpi.l    #$0006,d0
  440.     bcc    swcerr
  441.     lsl.l    #8,d0
  442.     beq    swcerr
  443.     move.l    d0,RS_AUXE        * (AUN NO)×0x100の値 0 なら [AUX]
  444.  
  445.     lea    $7C4.w,a1    * IOCS F1 のベクタ
  446.     IOCS    _B_LPEEK
  447.     cmpi.l    #$0100_0000,d0
  448.     bcs    @f
  449.     pea    LREXRS(pc)
  450.     bra    PE    *end
  451. @@:
  452.     bra    sw
  453. bswc:******************
  454.     bsr    AtoI
  455.     cmpi.l    #$0002,d0
  456.     bcc    swcerr
  457.     move.w    d0,BotMod        *0:正常 1:反転 
  458.     bra    sw
  459. iswc:******************
  460.     clr.l    RS_AUXE            * (AUN NO)×0x100の値 0 なら [AUX]
  461.     move.w    #-1,I_SWC
  462.     bra    sw
  463. oswc:******************
  464.     move.b    (a2)+,d0
  465.     beq    swe
  466.     ori.b    #$20,d0    *小文字化!
  467.     cmpi.b    #'n',d0
  468.     beq    os_on
  469.     cmpi.b    #'f',d0
  470.     bne    swe
  471. os_off:
  472.     move.b    (a2),d0        *'f'の字をスキップ
  473.     ori.b    #$20,d0    *小文字化!
  474.     cmpi.b    #'f',d0
  475.     bne    @f
  476.     addq    #1,a2
  477. @@:    clr.w    DrvDrv        *0:停止
  478.     bra    sw
  479. os_on:
  480.     move.w    #1,DrvDrv    *1:しようする
  481.     bra    sw
  482.  
  483. help:******************
  484.     pea    LRH(pc)
  485.     bra    PE    *end
  486.  
  487.  
  488. keep:    ************************** 常駐させる
  489.     move.l    a3,d0
  490.     beq    kep_L1
  491.         *既に常駐、設定変更
  492.     tst.w    I_SWC
  493.     bne    kep_L1
  494.     bsr    RSINIT
  495.     move.l    RS_AUXE(pc),RS_AUXE-SS(a3)
  496.     move.w    BotMod(pc),BotMod-SS(a3)
  497.     move.w    DrvDrv(pc),DrvDrv-SS(a3)
  498.     bsr    keepsub
  499.     pea    LR5(pc)
  500.     bra    PE    *end
  501.  
  502. kep_L1:
  503.     **セット
  504.     moveq    #-1,d1
  505.     bsr    RS_SET232C
  506.     move.l    d0,RSMOD        *常駐前の RS状態
  507.     bpl    @f
  508.  
  509.     move.b    RS_AUXE+2(pc),d0
  510.     addi.b    #'0',d0
  511.     move.b    d0,LRANOV_
  512.     pea    LRANOV(pc)
  513.     bra    PE    *end
  514.  
  515. @@:
  516.     bsr    RSINIT
  517.  
  518.     suba.l    a1,a1
  519.     SUPER
  520.     movea.l    d0,a1
  521.  
  522.     move.l    MSD_,MSD_JMP+2
  523.      lea    MSD-SS(a4),a0
  524.      move.l    a0,MSD_
  525.     move.l    MS_INIT_,MS_INIT_JMP+2
  526.      lea    MS_INIT-SS(a4),a0
  527.      move.l    a0,MS_INIT_
  528.     move.l    MS_SEL_,MS_SEL_JMP+2
  529.      lea    MS_SEL-SS(a4),a0
  530.      move.l    a0,MS_SEL_
  531.     move.l    MS_LIMIT_,MS_LIMIT_JMP+2
  532.      lea    MS_LIMIT-SS(a4),a0
  533.      move.l    a0,MS_LIMIT_
  534.  
  535.     USER
  536.  
  537.     bsr    keepsub
  538.  
  539.     pea    LRKP(pc)
  540.     DOS    _PRINT
  541.     addq    #4,sp
  542.     clr.w    -(sp)
  543.     move.l    #EndStatio-StartStatio,-(sp)
  544.     DOS    _KEEPPR
  545.  
  546.     ****************
  547. keepsub:
  548.     lea    LR2(pc),a0
  549.     move.b    RS_AUXE+2(pc),d0
  550.     beq    @f
  551.     lea    LR2_(pc),a0
  552.     addi.b    #'0',d0
  553.     move.b    d0,LR2_1
  554. @@:
  555.     tst.w    DrvDrv
  556.     bne    @f
  557.     lea    LR2N(pc),a0
  558. @@:    move.l    a0,-(sp)
  559.     DOS    _PRINT
  560.     addq    #4,sp
  561.  
  562.     move.w    BotMod(pc),d0        *ボタンモード
  563.     beq    @f
  564.     pea    LRTB(pc)
  565.     DOS    _PRINT
  566.     addq    #4,sp
  567. @@:
  568. @@:
  569.     bsr    RS_LOF232C
  570.     tst.w    d0
  571.     beq    ks_L1
  572.     bsr    RS_INP232C
  573.     bra    @b
  574. ks_L1:
  575.     rts
  576.  
  577. free:    *****************************常駐解除
  578.     move.l    a3,d0
  579.     bne    @f
  580.     pea    LR8(pc)        **非常駐
  581.     bra    PE    *end
  582.  
  583. @@:    cmpi.w    #$F,d1
  584.     beq    @f
  585.     pea    LR4(pc)        **ベクタが占領
  586.     bra    PE    *end
  587.  
  588. @@:    suba.l    a1,a1
  589.     SUPER
  590.     movea.l    d0,a1
  591.  
  592.     move.l    (MSD_JMP-SS)+2(a3),MSD_
  593.     move.l    (MS_INIT_JMP-SS)+2(a3),MS_INIT_
  594.     move.l    (MS_SEL_JMP-SS)+2(a3),MS_SEL_
  595.     move.l    (MS_LIMIT_JMP-SS)+2(a3),MS_LIMIT_
  596.  
  597.     USER
  598.  
  599.     move.l    RSMOD-SS(a3),d1
  600.     bsr    RS_SET232C
  601.  
  602.     sub.l    #$00000F0,a3
  603.     move.l    a3,-(sp)
  604.     DOS    _MFREE
  605.     addq    #4,sp
  606.  
  607.     pea    LR3(pc)
  608. PE:    DOS    _PRINT
  609.     addq.w    #4,sp
  610.     DOS    _EXIT
  611.  
  612. I_SWC:    .dc.w    0    *スイッチ /I がある?
  613.  
  614. LR2:    .dc.b    ' RS-232C PORT の シリアルマウスが使用出来ます。',$0d,$0a,0
  615.     .even
  616. LR2_:    .dc.b    ' RS-232C PORT [AUX'
  617. LR2_1:    .dc.b    '0] の シリアルマウスが使用出来ます。',$0d,$0a,0
  618.     .even
  619. LR2N:    dc.b    ' ドライバーの機能は停止しています。',$0d,$0a,0
  620.     .even
  621. LRKP:    .dc.b    ' 常駐しました。',$0d,$0a,0
  622.     .even
  623. LR3:    dc.b    ' 常駐解除しました。',$0d,$0a,0
  624.     .even
  625. LR4:    dc.b    ' ベクタが占領されています。',$0d,$0a,0
  626.     .even
  627. LR5:    .dc.b    ' 設定を変更しました。',$0d,$0a,0
  628. LR5_:    .dc.b    ' 既に常駐しています。',$0d,$0a,0
  629.     .even
  630. LR6:    .dc.b    ' コマンドラインが異常です。',$0d,$0a,0
  631.     .even
  632. LR7:    .dc.b    ' スイッチが異常です。',$0d,$0a,0
  633.     .even
  634. LR8:    .dc.b    ' 常駐していません。',$0d,$0a,0
  635.     .even
  636. LREXRS:    .dc.b    ' RSDRV.SYSが常駐していません。',$0d,$0a,0
  637.     .even
  638. LRANOV:    .dc.b    ' RS-232C PORT [AUX'
  639. LRANOV_:.dc.b    '0] がありません。',$0d,$0a,0
  640.     .even
  641. LRTB:    .dc.b    ' ボタン機能を反転します。',$0d,$0a,0
  642.     .even
  643.  
  644. LRH:
  645.     .dc.b    $0d,$0a
  646.     .dc.b    '使用法:RSMOUSE.x [switch]',$0d,$0a
  647.     *.dc.b    '    /I ・・・・ 強制常駐します(スイッチのはじめに付けること)。',$0d,$0a
  648.     .dc.b    '    /A[n] ・ AUX[n]のポートのマウスを使用します(n=1~5)。',$0d,$0a
  649.     .dc.b    '    /R ・・・・ 常駐解除します。',$0d,$0a
  650.     .dc.b    '    /ON ・・・ 機能を有効にします(def.)。',$0d,$0a
  651.     .dc.b    '    /OFF ・・ 機能を停止します。',$0d,$0a
  652.     .dc.b    '    /B0 ・・・ ボタン機能をノーマルにします(def.)。',$0d,$0a
  653.     .dc.b    '    /B1 ・・・ ボタン機能を反転します。',$0d,$0a
  654.     .dc.b    $0d,$0a,0
  655.     .even
  656. LR1:    dc.b    'X68k RS-232C MOUSE DRIVER Version 0.70 Copyright 1994 1995 TNB製作所',$0d,$0a,0
  657.     .even
  658.  
  659.     .ds.b    2048
  660. usrsp:
  661.  
  662.  
  663.  
  664.